﻿
Option Compare Binary
Option Infer On
Option Strict On
Option Explicit On

Imports LullabyFullDeCaixa.Web
Imports System
Imports System.Collections.Generic
Imports System.ComponentModel
Imports System.ComponentModel.DataAnnotations
Imports System.Data.Objects.DataClasses
Imports System.Linq
Imports System.ServiceModel.DomainServices.Hosting
Imports System.ServiceModel.DomainServices.Server


'El MetadataTypeAttribute identifica a HostalMetadata como la clase
' que contiene metadatos adicionales para la class Hostal.
<MetadataTypeAttribute(GetType(Hostal.HostalMetadata))>  _
Partial Public Class Hostal
    
    'Esta clase permite adjuntar atributos personalizados a properties
    ' de la clase Hostal.
    '
    'Por ejemplo, lo siguiente marca la property Xyz como una
    ' property requerida y especifica el formato de los valores válidos:
    '    <Required()>
    '    <RegularExpression("[A-Z][A-Za-z0-9]*")>
    '    <StringLength(32)>
    '    Public Property Xyz As String
    Friend NotInheritable Class HostalMetadata
        
        'No se van a crear instancias de las clases de metadatos.
        Private Sub New()
            MyBase.New
        End Sub
        
        Public Property Id As Integer
        
        Public Property LLibresCaixa As EntityCollection(Of LLibreCaixa)
        
        Public Property UsuariHostals As EntityCollection(Of UsuariHostal)
        
        Public Property Nom As String
    End Class
End Class

'El MetadataTypeAttribute identifica a LLibreCaixaMetadata como la clase
' que contiene metadatos adicionales para la class LLibreCaixa.
<MetadataTypeAttribute(GetType(LLibreCaixa.LLibreCaixaMetadata))>  _
Partial Public Class LLibreCaixa
    
    'Esta clase permite adjuntar atributos personalizados a properties
    ' de la clase LLibreCaixa.
    '
    'Por ejemplo, lo siguiente marca la property Xyz como una
    ' property requerida y especifica el formato de los valores válidos:
    '    <Required()>
    '    <RegularExpression("[A-Z][A-Za-z0-9]*")>
    '    <StringLength(32)>
    '    Public Property Xyz As String
    Friend NotInheritable Class LLibreCaixaMetadata
        
        'No se van a crear instancias de las clases de metadatos.
        Private Sub New()
            MyBase.New
        End Sub
        
        Public Property CaixaFinal As Nullable(Of Double)
        
        Public Property CaixaInicial As Nullable(Of Double)
        
        Public Property Data As DateTime
        
        Public Property DataHoraObertura As DateTime
        
        Public Property DataHoraTancament As Nullable(Of DateTime)
        
        Public Property Id As Integer
        
        Public Property IdHostal As Integer
        
        Public Property IdUsuari As Integer
        
        Public Property Hostal As Hostal

        <Include()> _
        Public Property LLibreCaixaDespesaIngres As EntityCollection(Of LLibreCaixaDespesaIngres)

        <Include()> _
        Public Property Reserva As EntityCollection(Of Reserva)

        Public Property Usuari As Usuari
        
        Public Property Observacions As String
        
        Public Property Sobre As Nullable(Of Double)
        
    End Class
End Class

'El MetadataTypeAttribute identifica a LLibreCaixaDespesaIngresMetadata como la clase
' que contiene metadatos adicionales para la class LLibreCaixaDespesaIngres.
<MetadataTypeAttribute(GetType(LLibreCaixaDespesaIngres.LLibreCaixaDespesaIngresMetadata))>  _
Partial Public Class LLibreCaixaDespesaIngres
    
    'Esta clase permite adjuntar atributos personalizados a properties
    ' de la clase LLibreCaixaDespesaIngres.
    '
    'Por ejemplo, lo siguiente marca la property Xyz como una
    ' property requerida y especifica el formato de los valores válidos:
    '    <Required()>
    '    <RegularExpression("[A-Z][A-Za-z0-9]*")>
    '    <StringLength(32)>
    '    Public Property Xyz As String
    Friend NotInheritable Class LLibreCaixaDespesaIngresMetadata
        
        'No se van a crear instancias de las clases de metadatos.
        Private Sub New()
            MyBase.New
        End Sub
        
        Public Property Id As Integer
        
        Public Property IdLLibreCaixa As Integer
        
        Public Property IdTipusDespesaIngres As Integer
        
        Public Property Import As Double
        
        Public Property LLibreCaixa As LLibreCaixa
        
        Public Property TipusDespesaIngres As TipusDespesaIngres
        
        Public Property Observacions As String
    End Class
End Class

'El MetadataTypeAttribute identifica a TipusDespesaIngresMetadata como la clase
' que contiene metadatos adicionales para la class TipusDespesaIngres.
<MetadataTypeAttribute(GetType(TipusDespesaIngres.TipusDespesaIngresMetadata))>  _
Partial Public Class TipusDespesaIngres
    
    'Esta clase permite adjuntar atributos personalizados a properties
    ' de la clase TipusDespesaIngres.
    '
    'Por ejemplo, lo siguiente marca la property Xyz como una
    ' property requerida y especifica el formato de los valores válidos:
    '    <Required()>
    '    <RegularExpression("[A-Z][A-Za-z0-9]*")>
    '    <StringLength(32)>
    '    Public Property Xyz As String
    Friend NotInheritable Class TipusDespesaIngresMetadata
        
        'No se van a crear instancias de las clases de metadatos.
        Private Sub New()
            MyBase.New
        End Sub
        
        Public Property EsBaixa As Boolean
        
        Public Property EsGasto As Boolean
        
        Public Property Id As Integer
        
        Public Property LLibreCaixaDespesaIngres As EntityCollection(Of LLibreCaixaDespesaIngres)
        
        Public Property Nom As String
    End Class
End Class

'El MetadataTypeAttribute identifica a UsuariMetadata como la clase
' que contiene metadatos adicionales para la class Usuari.
<MetadataTypeAttribute(GetType(Usuari.UsuariMetadata))> _
Partial Public Class Usuari

    'Esta clase permite adjuntar atributos personalizados a properties
    ' de la clase Usuari.
    '
    'Por ejemplo, lo siguiente marca la property Xyz como una
    ' property requerida y especifica el formato de los valores válidos:
    '    <Required()>
    '    <RegularExpression("[A-Z][A-Za-z0-9]*")>
    '    <StringLength(32)>
    '    Public Property Xyz As String
    Friend NotInheritable Class UsuariMetadata

        'No se van a crear instancias de las clases de metadatos.
        Private Sub New()
            MyBase.New()
        End Sub

        Public Property Id As Integer

        Public Property IdTipusUsuari As Integer

        Public Property LLibresCaixa As EntityCollection(Of LLibreCaixa)

        <Include()> _
        Public Property UsuariHostals As EntityCollection(Of UsuariHostal)

        <Include()> _
        Public Property UsuariReports As EntityCollection(Of UsuariReport)

        Public Property Nom As String

        Public Property Password As String

        Public Property UserName As String
    End Class
End Class

<MetadataTypeAttribute(GetType(Neteja.NetejaMetadata))> _
Partial Public Class Neteja


    Friend NotInheritable Class NetejaMetadata

        'No se van a crear instancias de las clases de metadatos.
        Private Sub New()
            MyBase.New()
        End Sub

        Public Property Id As Integer

        <Required()> _
        Public Property IdUsuariNeteja As Integer

    End Class
End Class


<MetadataTypeAttribute(GetType(Reserva.ReservaMetadata))> _
Partial Public Class Reserva


    Friend NotInheritable Class ReservaMetadata

        'No se van a crear instancias de las clases de metadatos.
        Private Sub New()
            MyBase.New()
        End Sub

        Public Property Id As Integer

        '<Required()> _
        Public Property CheckIn As Date
        '<Required()> _
        Public Property CheckOut As Date
        '<Required()> _
        Public Property NombrePersones As Integer
        '<Required()> _
        Public Property Nom As String
        '<Required()> _
        Public Property DataNaixement As Date
        '<Required()> _
        Public Property IdSexe As Integer
        '<Required()> _
        Public Property IdPais As Integer
        '<Required()> _
        Public Property IdTipusDocument As Integer
        '<Required()> _
        Public Property NumeroDocument As String
        '<Required()> _
        Public Property DataDocument As Date


    End Class
End Class

'El MetadataTypeAttribute identifica a UsuariHostalMetadata como la clase
' que contiene metadatos adicionales para la class UsuariHostal.
<MetadataTypeAttribute(GetType(UsuariHostal.UsuariHostalMetadata))>  _
Partial Public Class UsuariHostal
    
    'Esta clase permite adjuntar atributos personalizados a properties
    ' de la clase UsuariHostal.
    '
    'Por ejemplo, lo siguiente marca la property Xyz como una
    ' property requerida y especifica el formato de los valores válidos:
    '    <Required()>
    '    <RegularExpression("[A-Z][A-Za-z0-9]*")>
    '    <StringLength(32)>
    '    Public Property Xyz As String
    Friend NotInheritable Class UsuariHostalMetadata
        
        'No se van a crear instancias de las clases de metadatos.
        Private Sub New()
            MyBase.New
        End Sub
        
        Public Property Id As Integer
        
        Public Property IdHostal As Integer
        
        Public Property IdUsuari As Integer
        
        Public Property Hostal As Hostal
        
        Public Property Usuari As Usuari

    End Class
End Class

